Ubuntu集群时间同步配置

Ubuntu 默认使用 timesyncd 服务,需要开启 NTP 的指定服务器时间同步。NTP 服务器(Network Time Protocol)是用来使计算机时间同步化的一种协议,NTP服务器确保不同的系统之间时间戳保持同步。系统信息:

  • OS 版本: Ubuntu 20.04

初始化配置 timedatectl

检查 timedatectl 配置信息状态,使用命令 timedatectl status(注: 不需要用 sudo 执行)。执行结果信息可以查看是否使用了 ntp,如果如下 NTP service 的状态是 n/a 说明缺少 ntp

1
2
3
4
5
6
7
               Local time: Mon 2022-12-12 23:35:24 CST
Universal time: Mon 2022-12-12 15:35:24 UTC
RTC time: Mon 2022-12-12 15:35:28
Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: no
NTP service: n/a
RTC in local TZ: no

使用命令

  • sudo apt-get install systemd-timesyncd -y 安装服务——一般情况下,是执行第二开启服务时出现 Failed to set ntp: NTP not supported 信息才安装
  • sudo timedatectl set-ntp on 开启时间同步服务
  • sudo timedatectl set-timezone Asia/Shanghai 设置时区为上海

使用 ntp 配置时间同步服务器

  • sudo apt-get install ntp 安装 ntp 服务
  • 需要修改服务中 /etc/ntp.conf 文件
  • systemctl unmask ntp 执行下一个命令出现 mask 信息时,执行改名了
  • systemctl start ntpsystemctl enable ntp 分别启动和开启启动 ntp 服务

/etc/ntp.conf 修改方式

具体需要修改内容见如下 step1 和 step2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help

driftfile /var/lib/ntp/ntp.drift

# Leap seconds definition provided by tzdata
leapfile /usr/share/zoneinfo/leap-seconds.list

# Enable this if you want statistics to be logged.
#statsdir /var/log/ntpstats/

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

# Specify one or more NTP servers.

# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board
# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for
# more information.

# Step1: 注释掉下面的配置信息
# pool 0.ubuntu.pool.ntp.org iburst
# pool 1.ubuntu.pool.ntp.org iburst
# pool 2.ubuntu.pool.ntp.org iburst
# pool 3.ubuntu.pool.ntp.org iburst

# Use Ubuntu's ntp server as a fallback.
pool ntp.ubuntu.com

# Access control configuration; see /usr/share/doc/ntp-doc/html/accopt.html for
# details. The web page <http://support.ntp.org/bin/view/Support/AccessRestrictions>
# might also be helpful.
#
# Note that "restrict" applies to both servers and clients, so a configuration
# that might be intended to block requests from certain clients could also end
# up blocking replies from your own upstream servers.

# By default, exchange time with everybody, but don't allow configuration.
restrict -4 default kod notrap nomodify nopeer noquery limited
restrict -6 default kod notrap nomodify nopeer noquery limited

# Local users may interrogate the ntp server more closely.
restrict 127.0.0.1
restrict ::1

# Needed for adding pool entries
restrict source notrap nomodify noquery

# Clients from this (example!) subnet have unlimited access, but only if
# cryptographically authenticated.
#restrict 192.168.123.0 mask 255.255.255.0 notrust
# Step2:添加需要同步信息的服务器地址信息
restrict 192.168.1.11 mask 255.255.255.0 notrust

# If you want to provide time to your local subnet, change the next line.
# (Again, the address is an example only.)
#broadcast 192.168.123.255

# If you want to listen to time broadcasts on your local subnet, de-comment the
# next lines. Please do this only if you trust everybody on the network!
#disable auth
#broadcastclient
作者

ZenRay

发布于

2024-04-18

更新于

2024-04-18

许可协议

CC BY-NC-SA 4.0